package com.bbva.generico.controller;

import java.io.ByteArrayInputStream;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import javax.faces.bean.ManagedBean;

import org.primefaces.model.DefaultStreamedContent;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;

import com.bbva.generico.domain.Aplicacion;
import com.bbva.generico.service.LoginService;
import com.bbva.generico.to.GnrSistema;

@Controller
@ManagedBean
public class ListadoController {
	
	@Autowired
	private LoginService loginService;
	
	private List<Aplicacion> lstAplicaciones;
    
    public ListadoController() {
//		lstAplicaciones = new ArrayList<Aplicacion>();
//		lstAplicaciones.add(new Aplicacion("01","Leasing","true"));
//		lstAplicaciones.add(new Aplicacion("02","Leasing 2","true"));
//		lstAplicaciones.add(new Aplicacion("03","Leasing 3","false"));
//		lstAplicaciones.add(new Aplicacion("04","Leasing 4","true"));
	}
    
    
    public List<Aplicacion> obtenerAplicaciones() {
    	lstAplicaciones = new ArrayList<Aplicacion>();
    	try {
			GnrSistema beanImagen = null;
			beanImagen = loginService.consultaImagenes(new BigDecimal(2));
			Aplicacion aplicacion = new Aplicacion();
			System.out.println("Here!!!");
			for (int i = 0; i < 3; i++) {
				System.out.println("En el for ..");
				aplicacion.setCodigo(i+"");
				aplicacion.setDescripcion(beanImagen.getDescripcion());
				aplicacion.setGraphicText(new DefaultStreamedContent(new ByteArrayInputStream(beanImagen.getImagen()), "image/jpg"));
				lstAplicaciones.add(aplicacion);
				System.out.println("Array ...");
			}
			
		} catch (Exception e) {
			e.printStackTrace();
		}
    	return lstAplicaciones;
    }
    
    public List<Aplicacion> getLstAplicaciones() {
    	this.obtenerAplicaciones();
    	return lstAplicaciones;
    }
    
}
